using System;
using System.Collections;
using System.Collections.Generic;

namespace Bridges.Model
{
	/// <summary>
	/// Estado
	/// </summary>
	public class Estado
	{
		#region Member Variables
		protected String _codEstado;
		protected String _nomeEstado;
		protected Pais _pais;
		protected List<Cidade> _cidades;

		#endregion

		#region Constructors

		public Estado() { }

		public Estado( String nomeEstado, Pais pais )
		{
			this._nomeEstado = nomeEstado;
			this._pais = pais;
		}

		#endregion

		#region Public Properties

		public String CodEstado
		{
            get { return _codEstado; }
            set { _codEstado = value; }
		}

		public String NomeEstado
		{
			get { return _nomeEstado; }
			set
			{
				if ( value != null && value.Length > 75)
					throw new ArgumentOutOfRangeException("Valor inv?lido para Nomeuf", value, value.ToString());
				_nomeEstado = value;
			}
		}

		public Pais Pais
		{
			get { return _pais; }
			set { _pais = value; }
		}

		public List<Cidade> cidades
		{
			get
			{
				if (_cidades==null)
				{
					_cidades = new List<Cidade>();
				}
				return _cidades;
			}
			set { _cidades = value; }
		}

		#endregion
		
	}

}
